Skip to content

chore(camel-test-infra-ibmmq): upgrade ibm.mq.container to 10.0.0.0-r4 - #25913

Merged
gnodet merged 2 commits into
mainfrom
automated/upgrade-ibm-mq-container-10.0.0.0-r4
Sep 3, 2026
Merged

chore(camel-test-infra-ibmmq): upgrade ibm.mq.container to 10.0.0.0-r4#25913
gnodet merged 2 commits into
mainfrom
automated/upgrade-ibm-mq-container-10.0.0.0-r4

Conversation

@github-actions

Copy link
Copy Markdown
Contributor

This PR updates the ibm.mq.container container image to version 10.0.0.0-r4.

Update Details

  • Property: ibm.mq.container
  • Image: icr.io/ibm-messaging/mq
  • File: /home/runner/work/camel/camel/test-infra/camel-test-infra-ibmmq/src/main/resources/org/apache/camel/test/infra/ibmmq/services/container.properties
  • Old version: 10.0.0.0-r3
  • New version: 10.0.0.0-r4

Verification

Please verify:

  • Container image version is compatible with existing tests
  • No breaking changes in the updated version
  • Tests pass with the new version

Run the following to rebuild the test infra:

mvn clean verify -pl camel-test-infra-ibmmq

Then test the impacted components.


This PR was automatically created by the Container Version Upgrade workflow.

Update ibm.mq.container from 10.0.0.0-r3 to 10.0.0.0-r4
@github-actions github-actions Bot added dependencies Pull requests that update a dependency file container-images For check container upgrades automated For Check Container upgrade labels Aug 31, 2026
@gnodet

gnodet commented Aug 31, 2026

Copy link
Copy Markdown
Contributor

✅ Local IT results for 98bc9ebf57133f38124b88c712748363df44b289

All integration tests passed locally (excluding pre-existing failures)

Test-infra module: camel-test-infra-ibmmq
Components tested: camel-jms

Component Tests Passed Failed Errors Skipped Result
camel-jms 444 432 1 2 9 ✅ (failures are pre-existing)

Note on failures: All 3 failures are pre-existing on main branch, unrelated to IBM MQ 10.0.0.0-r4 upgrade:

  • JmsComponentIbmMQTest and JmsReplyToIbmMQTest: IBM MQ container startup timeout (30s) — same failure on main. This is a test environment limitation, not a container regression.
  • JmsTestConnectionOnStartupTest.testConnectionOnStartupConsumerTest: Exception type assertion mismatch (FailedToCreateConsumerException vs FailedToStartRouteException) — not IBM MQ specific.
Failure verification
Verified: ran JmsComponentIbmMQTest + JmsReplyToIbmMQTest on main branch →
same ConditionTimeout failures. Pre-existing environment issue.

JmsComponentIbmMQTest: IBM MQ accepting JMS connections didn't complete within 30 seconds
JmsReplyToIbmMQTest: IBM MQ accepting JMS connections didn't complete within 30 seconds
Full test output
Tests run: 444, Failures: 1, Errors: 2, Skipped: 9
(432 tests passed; all failures confirmed pre-existing on main)

BUILD completed in 06:57 min

Local integration tests run by ForgeBot on behalf of @gnodet
Tests run without -Dci.env.name to include ITs disabled on GitHub Actions CI

@apupier

apupier commented Aug 31, 2026

Copy link
Copy Markdown
Contributor

wondering when these tests were broken, it was recently supposed to be working with IBM MQ 10 #25232

@gnodet

gnodet commented Sep 3, 2026

Copy link
Copy Markdown
Contributor

Test results on Mac (M4 Max, Docker Desktop with QEMU x86_64 emulation)

main branch (IBM MQ 10.0.0.0-r3):

  • JmsComponentIbmMQTest — ✅ PASS (~30s)
  • JmsReplyToIbmMQTest — ✅ PASS (~30s)

With IBM MQ 10.0.0.0-r4:

  • JmsComponentIbmMQTest — ✅ PASS (3 consecutive runs, ~28-30s each)
  • JmsReplyToIbmMQTest — ✅ PASS (~30s)

Findings:

  1. Both tests pass reliably when the environment has enough resources — r4 is fully compatible, no regression from r3
  2. The previous failures on a lower-spec x86_64 machine were due to the 30s timeout in waitForJmsConnection() being too tight — the IBM MQ container startup time varies with available resources
  3. The tests are disabled on both GitHub Actions CI (@DisabledIfSystemProperty) and ARM64 (@DisabledOnOs), so they can only be exercised locally on x86_64

Recommendation: Increase the waitForJmsConnection() timeout from 30s to 60s in IbmMQLocalContainerInfraService — Awaitility exits as soon as the connection succeeds, so a higher cap doesn't slow down passing tests, it just prevents false failures on slower environments.

@gnodet

gnodet commented Sep 3, 2026

Copy link
Copy Markdown
Contributor

Full camel-jms test suite results with IBM MQ 10.0.0.0-r4

Ran on Mac M4 Max, Docker Desktop with QEMU x86_64 emulation, JDK 26, @DisabledOnOs/@DisabledIfSystemProperty conditions deactivated to force IBM MQ tests to run.

Surefire execution Tests Passed Failed Errors Skipped Result
default-test 444 435 0 0 9
serials-test 17 17 0 0 0
exclusive-test 2 2 0 0 0
Total 463 454 0 0 9

All IBM MQ-specific tests pass:

  • JmsComponentIbmMQTest — ✅ (29s)
  • JmsReplyToIbmMQTest — ✅ (<1s, reuses the container from the previous test)

The JMS header handling (PR #25232 fix for vendor-prefixed properties) works correctly with r4 — no header regression. The 9 skipped tests are pre-existing skips (manual tests, passthrough strategy tests).

Conclusion: 10.0.0.0-r4 is a safe upgrade — no regressions across the full 463-test JMS suite.

…o 60s

The 30s Awaitility timeout in waitForJmsConnection() is too tight for
resource-constrained environments. Since Awaitility exits as soon as the
connection succeeds, a higher cap does not slow down passing tests.
@github-actions

github-actions Bot commented Sep 3, 2026

Copy link
Copy Markdown
Contributor Author

🌟 Thank you for your contribution to the Apache Camel project! 🌟
🤖 CI automation will test this PR automatically.

🐫 Apache Camel Committers, please review the following items:

  • First-time contributors require MANUAL approval for the GitHub Actions to run
  • You can use the command /component-test (camel-)component-name1 (camel-)component-name2.. to request a test from the test bot although they are normally detected and executed by CI.
  • You can label PRs using skip-tests and test-dependents to fine-tune the checks executed by this PR.
  • Build and test logs are available in the summary page. Only Apache Camel committers have access to the summary.

⚠️ Be careful when sharing logs. Review their contents before sharing them publicly.

@github-actions

github-actions Bot commented Sep 3, 2026

Copy link
Copy Markdown
Contributor Author

🧪 CI tested the following changed modules:

  • catalog/camel-catalog
  • test-infra/camel-test-infra-all
  • test-infra/camel-test-infra-ibmmq

🔬 Scalpel shadow comparison — Scalpel: 15 tested, 26 compile-only — current: 14 all tested

Maveniverse Scalpel detected 41 affected modules (current approach: 14).

⚠️ Modules only in Scalpel (27)
  • apache-camel
  • camel-allcomponents
  • camel-catalog
  • camel-catalog-console
  • camel-catalog-maven
  • camel-catalog-suggest
  • camel-componentdsl
  • camel-endpointdsl
  • camel-endpointdsl-support
  • camel-itest
  • camel-jbang-core
  • camel-jbang-it
  • camel-jbang-main
  • camel-jbang-plugin-edit
  • camel-jbang-plugin-generate
  • camel-jbang-plugin-kubernetes
  • camel-jbang-plugin-test
  • camel-kamelet-main
  • camel-launcher
  • camel-report-maven-plugin
  • camel-route-parser
  • camel-yaml-dsl
  • camel-yaml-dsl-deserializers
  • camel-yaml-dsl-maven-plugin
  • coverage
  • docs
  • dummy-component

Skip-tests mode would test 15 modules (3 direct + 12 downstream), skip tests for 26 (generated code, meta-modules)

Modules Scalpel would test (15)
  • camel-activemq
  • camel-activemq6
  • camel-amqp
  • camel-catalog
  • camel-jbang-mcp
  • camel-jbang-plugin-mcp
  • camel-jbang-plugin-route-parser
  • camel-jbang-plugin-tui
  • camel-jbang-plugin-validate
  • camel-jms
  • camel-launcher-container
  • camel-test-infra-all
  • camel-test-infra-ibmmq
  • camel-yaml-dsl-validator
  • camel-yaml-dsl-validator-maven-plugin
Modules with tests skipped (26)
  • apache-camel
  • camel-allcomponents
  • camel-catalog-console
  • camel-catalog-maven
  • camel-catalog-suggest
  • camel-componentdsl
  • camel-endpointdsl
  • camel-endpointdsl-support
  • camel-itest
  • camel-jbang-core
  • camel-jbang-it
  • camel-jbang-main
  • camel-jbang-plugin-edit
  • camel-jbang-plugin-generate
  • camel-jbang-plugin-kubernetes
  • camel-jbang-plugin-test
  • camel-kamelet-main
  • camel-launcher
  • camel-report-maven-plugin
  • camel-route-parser
  • camel-yaml-dsl
  • camel-yaml-dsl-deserializers
  • camel-yaml-dsl-maven-plugin
  • coverage
  • docs
  • dummy-component

ℹ️ Shadow mode — Scalpel observes but does not affect test execution. Learn more

All tested modules (41 modules)
  • Camel :: AMQP
  • Camel :: ActiveMQ 5.x
  • Camel :: ActiveMQ 6.x
  • Camel :: All Components Sync point
  • Camel :: Assembly
  • Camel :: Catalog :: Camel Catalog
  • Camel :: Catalog :: Camel Report Maven Plugin
  • Camel :: Catalog :: Camel Route Parser
  • Camel :: Catalog :: Console
  • Camel :: Catalog :: Dummy Component
  • Camel :: Catalog :: Maven
  • Camel :: Catalog :: Suggest
  • Camel :: Component DSL
  • Camel :: Coverage
  • Camel :: Docs
  • Camel :: Endpoint DSL
  • Camel :: Endpoint DSL :: Support
  • Camel :: Integration Tests
  • Camel :: JBang :: Core
  • Camel :: JBang :: Integration tests
  • Camel :: JBang :: MCP
  • Camel :: JBang :: Main
  • Camel :: JBang :: Plugin :: Edit
  • Camel :: JBang :: Plugin :: Generate
  • Camel :: JBang :: Plugin :: Kubernetes
  • Camel :: JBang :: Plugin :: MCP
  • Camel :: JBang :: Plugin :: Route Parser
  • Camel :: JBang :: Plugin :: TUI
  • Camel :: JBang :: Plugin :: Testing
  • Camel :: JBang :: Plugin :: Validate
  • Camel :: JMS
  • Camel :: Kamelet Main
  • Camel :: Launcher
  • Camel :: Launcher :: Container
  • Camel :: Test Infra :: All test services
  • Camel :: Test Infra :: IBM MQ
  • Camel :: YAML DSL
  • Camel :: YAML DSL :: Deserializers
  • Camel :: YAML DSL :: Maven Plugins
  • Camel :: YAML DSL :: Validator
  • Camel :: YAML DSL :: Validator Maven Plugin

⚙️ View full build and test results

@gnodet
gnodet merged commit 9f3ff2e into main Sep 3, 2026
5 checks passed
@gnodet
gnodet deleted the automated/upgrade-ibm-mq-container-10.0.0.0-r4 branch September 3, 2026 22:14
@gnodet gnodet self-assigned this Sep 3, 2026
@gnodet gnodet added this to the 4.23.0 milestone Sep 3, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

automated For Check Container upgrade catalog container-images For check container upgrades dependencies Pull requests that update a dependency file test-infra

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants